package com.itnoob.clone;

/**
 * 定义一个抽象的FileSystem表示文件系统,实现Cloneable接口
 *
 * @author zhoujun
 * @date 2025/3/21 22:35
 */
public  abstract class FileSystem  implements Cloneable {
    /**
     * 定义一个name属性,表示文件或者文件夹名称
     */
    protected String name;

    /**
     * 定义一个抽象方法display,表示文件或者文件夹的信息
     */
    public abstract void disPlay();

    public String getName(){
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    /**
     * 重写clone方法,并使用super.clone来创建新的对象
     * @return
     * @throws CloneNotSupportedException
     */
    @Override
    protected Object clone() throws CloneNotSupportedException {
       Object obj = null;
        try {
            obj= super.clone();
        } catch (CloneNotSupportedException e) {
            e.printStackTrace();
        }
        return obj;
    }
}
